package cn.j0n4than.api.utils;

import org.mindrot.jbcrypt.BCrypt;

/**
 * 密码加密工具
 *
 * @author jonathan
 */
public class BcryptUtil {

    private static final String SALT = BCrypt.gensalt(12);

    /**
     * 加密密码
     *
     * @param str 待加密密码
     * @return 加密后的密码
     */
    public static String passwordHash(String str) {
        return BCrypt.hashpw(str, SALT);
    }

    /**
     * 验证密码
     *
     * @param password 明文密码
     * @param hashed   密文密码
     * @return true:success,false:fail
     */
    public static boolean passwordVerify(String password, String hashed) {
        return BCrypt.checkpw(password, hashed);
    }
}
